Schulung, Beratung und Entwicklung

Glück IT

Gesellschaft für IT Beratung, Schulung und Entwicklung

NEWS

Content Management System ®CMAssist

Optimierung von RAID oder HDD unter Linux

Mit einem einfachen Trick können Sie die Geschwindigkeit Ihres RAID-Systems unter Linux fast verdoppeln.

Mit einer kleinen Modifikation der Standardeinstellungen einer Linux-Installation können Sie das Speicherverhalten von Linux beeinflussen und damit den Lesezugriff Ihres RAID-Systems beschleunigen.

Unser RAID 5 mit 4 x 120GB Seagate SATA Festplatten mit je 8 MB Cache bringen mit hdparm folgende Ergebnisse:

hdparm -tT /dev/sda5

/dev/sda5:
Timing buffer-cache reads: 792 MB in 2.00 seconds = 396.00 MB/sec
Timing buffered disk reads: 106 MB in 3.04 seconds = 34.87 MB/sec

Sie können das ganz leicht und ohne dauerhafte Folgen ausprobieren:

echo "512" >/proc/sys/vm/min-readahead
echo "512" >/proc/sys/vm/max-readahead

Damit die Änderungen dauerhaft wirksam werden, sollten Sie folgende Zeilen in der Datei /etc/sysctl.conf eintragen/ändern:

vm.max-readahead=512
vm.min-readahead=512

Danach bringt ein erneuter Test mit hdparm:

hdparm -tT /dev/sda5

/dev/sda5:
Timing buffer-cache reads: 816 MB in 2.00 seconds = 408.00 MB/sec
Timing buffered disk reads: 190 MB in 3.01 seconds = 63.12 MB/sec

Darüberhinaus können Sie noch folgende Kernel Optionen verändern:

echo 100 5000 640 2560 150 30000 5000 1884 2 > /proc/sys/vm/bdflush

Alternativ kann dieser Eintrag auch mit einem kleinem Tool (sysctl) vorgenommen werden:

sysctl -w "vm.bdflush=10 500 0 0 500 3000 10 20 0"

Damit die Änderungen dauerhaft wirksam werden, sollten Sie folgende Zeilen in der Datei /etc/sysctl.conf eintragen/ändern:

vm.bdflush=10 500 0 0 500 3000 10 20 0

Der Erfolg ist zwar nicht so groß wie bei unserem ersten Tuningergebnis, aber immerhin.

hdparm -tT /dev/sda5

/dev/sda5:
Timing buffer-cache reads: 864 MB in 2.00 seconds = 432.00 MB/sec
Timing buffered disk reads: 192 MB in 3.00 seconds = 64.00 MB/sec

Ein weiteres Tuning können Sie betreiben, indem Sie die /etc/fstab so konfigurieren, das zum Beispiel Ihre Datenbankpartition ohne das Standardfeature "access timestamp" mounten. Das sorgt dafür, das jedesmal wenn auf eine Datei zugegriffen wird deren access timestamp aktualisiert wird, welches letztenendes Zeit benötigt. Das Feature stellen Sie ab, indem Sie in der Datei /etc/fstab das attribut "noatime" setzen:

/dev/sda5          /data                    ext3    noatime        1 2